package com.scy.boot03.mapper;

import com.scy.boot03.entity.Product;
import org.apache.ibatis.annotations.*;

import java.util.List;

//Mapper映射
@Mapper
public interface ProductMapper {
    /**
     * #{xxx}这种写法会自动从下面参数列表中找到同名参数，
     * 如果没有同名参数，则会调用第一个参数的getxxx()方法
     * @param product
     */
    @Insert("insert into product values(null,#{title},#{price},#{num})")
    void insert(Product product);

    /**
     * 查询数据时返回值为list集合，查询到的数据会自动封装到对象里面并把对象装进集合
     * @return
     */
    @Select("select * from product")
    List<Product> select();

    @Select("select * from product where id = #{id}")
    Product selectById(int id);

    @Update("update product set title=#{title},price=#{price},num=#{num} where id=#{id}")
    void update(Product product);

    @Delete("delete from product where id = #{id}")
    void deteleById(int id);
}
